.TH std::forward_list::clear 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::forward_list::clear \- std::forward_list::clear

.SH Synopsis
   void clear() noexcept;  \fI(since C++11)\fP

   Erases all elements from the container.

   Invalidates any references, pointers, and iterators referring to contained elements.
   Any past-the-end iterator remains valid.

.SH Parameters

   \fI(none)\fP

.SH Return value

   \fI(none)\fP

.SH Complexity

   Linear in the size of the container, i.e., the number of elements.

.SH Example


// Run this code

 #include <iostream>
 #include <string_view>
 #include <forward_list>

 void print_info(std::string_view rem, const std::forward_list<int>& v)
 {
     std::cout << rem << "{ ";
     for (const auto& value : v)
         std::cout << value << ' ';
     std::cout << "}\\n";
 }

 int main()
 {
     std::forward_list<int> container{1, 2, 3};
     print_info("Before clear: ", container);
     container.clear();
     print_info("After clear: ", container);
 }

.SH Output:

 Before clear: { 1 2 3 }
 After clear: { }

  Defect reports

   The following behavior-changing defect reports were applied retroactively to
   previously published C++ standards.

      DR    Applied to          Behavior as published              Correct behavior
   LWG 2231 C++11      complexity guarantee was mistakenly     complexity reaffirmed as
                       omitted in C++11                        linear

.SH See also

   erase_after erases an element after an element
               \fI(public member function)\fP
